Production printers comprise a print engine for depositing marking material on media in accordance with an image to be printed, and a printer controller for controlling the print engine and performing higher level functions in relation to the print jobs to be printed.
Print jobs submitted to the printer are typically not immediately queued for printing, but are initially placed in a waiting area. A printer operator typically manually plans the order in which the print jobs are to be printed by placing the received print jobs in a specific order in a print queue. The printer controller has the print engine print the print jobs in the order they have been arranged in the print queue.
Print jobs usually have deadlines assigned to them, although in many print systems the deadlines are not readily available, and it is up to a printer operator and a separate administration system to make sure print jobs are printed in time to meet the deadlines.
A common way to do this is to have a planner working in an administrative department assign batches of print jobs to printer operators or groups of printer operators which batches have to be completed as a whole by a certain time (for example end of shift) in order to make sure that all print jobs have been completed by their individual deadlines. Such an approach may work if the pressure is generally not too high. However, at the end of the year it is not uncommon for many professional printing companies to run near maximum production capacity and even then rush jobs come in that need to be fit in, which in general results in ad hoc planning and stress.
Print systems that do explicitly support deadlines typically employ an earliest-deadline-first algorithm to deal with deadlines. If all deadlines can be met, such an algorithm generally suffices. However, if not all deadlines can be met, compromises must be sought and often manually. Furthermore, even if all deadlines can still be met, the earliest-deadline-first algorithm may not provide the most optimal solution. Print jobs are printed with specific print settings which are defined in a job ticket. If a first print job requires different print settings than a second print job, the print settings have to be changed between the two print jobs. Some print settings can be changed instantaneously. However, changing other print settings requires a setup time. For example, in an ink jet printer, during printing the print head is very close to the printing surface (the media whereupon the print head is printing), but should not touch it. If the thickness of the media being printed on has to change, the height of the print head has to be changed. Many printers further require that no media passes under the print head while the height is being adjusted. It takes time to stop the supply of media, move the print head, and start the supply of media again.
Therefore, switching from the print settings of a first print job to the print settings of a second print job may take time (half a minute is not uncommon). Therefore, the order wherein a number of print jobs are printed actually affects the total print execution time for the print jobs. An earliest-deadline-first algorithm may therefore pick an order that is not the most efficient order.
It is an object of the present invention to improve over the described prior art.